Method for selecting a channel in a wireless network

ABSTRACT

A method for selecting one channel from a plurality of channels in a wireless network system is disclosed. The channels include at least one in-use channel, a first idle channel, and a second idle channel. The method includes comparing the frequency band of the in-use channel with the frequency band of the first idle channel and the second idle channel to determine a first reference value for the first idle channel and a second reference value for the second idle channel, and comparing the first reference value with the second reference value to select one from the first idle channel and the second idle channel.

BACKGROUND OF INVENTION

1. Field of the Invention

The present invention relates to wireless networks, and more specifically, to a method for selecting a channel in a wireless network.

2. Description of the Prior Art

Wireless networks are a popular field under development in modern technology. In a wireless network, a frequency band for receiving and transmitting signals can be divided into channels. For instance, a communication frequency band is divided into 12 channels according to the IEEE 802.11a standard, or into 14 channels according to the IEEE 802.11b standard.

A wireless network system generally includes more than one access point (AP), and each AP uses at least one channel. When an AP is turned on, it is required to search for at least one idle channel (i.e. a channel not being used by other APs) in the wireless network system in which it is located.

However in a wireless network system, channels generally overlap each other, so that a channel being used may interfere with neighboring idle channels. If the wireless network system has a plurality of idle channels, different channels may suffer from interferences of different degrees causing different APs to have different communication quality. Therefore, it is desirable to select an idle channel providing better communication quality among a plurality of idle channels.

Conventionally a method to select an idle channel involving detecting the interference on the idle channel is provided, in order to determine a communication quality value for the selected idle channel. If the quality value exceeds a predetermined threshold, the AP uses the corresponding idle channel to transmit signals, and if the quality value does not exceed the predetermined threshold, the AP continues detecting other idle channels until an idle channel having a communication quality value exceeding the threshold is found.

However, the aforementioned operation requires time for searching. In other words, the idle channel to be used cannot be determined immediately.

SUMMARY OF INVENTION

It is therefore one of the many objectives of the present invention to provide a method for selecting a channel in a wireless network system.

According to embodiments of the present invention, a method for selecting one channel from a plurality of channels in a wireless network system is disclosed. The channels include at least one in-use channel, a first idle channel, and a second idle channel. The method includes comparing the frequency band of the in-use channel with the frequency band of the first idle channel and the second idle channel to determine a first reference value for the first idle channel and a second reference value for the second idle channel, and comparing the first reference value with the second reference value to select one from the first idle channel and the second idle channel.

According to embodiments of the present invention, a method used in a wireless network system is disclosed, which includes detecting the status of a plurality of channels in the wireless network system to divide the channels into at least one in-use channel, a first idle channel, and a second idle channel, and comparing the frequency band of the in-use channel with the frequency band of the first idle channel and the second idle channel to determine a first reference value for the first idle channel and a second reference value for the second idle channel.

According to embodiments of the present invention, A method for selecting a channel from a plurality of channels in a wireless network system is disclosed. The channels comprise at least one in-use channel and at least one idle channel. The method comprises determining a reference value for each idle channel according to the distribution of the at least one in-use channel among the channels; and selecting a channel from the at least one idle channel according to the at least one reference value.

These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the embodiments that is illustrated in the various figures and drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a flowchart of the method according to an embodiment of the present invention.

DETAILED DESCRIPTION

As described above, in a wireless network system, channels often overlap with other channels. That is, a channel being used interferes with neighboring idle channels. Additionally, the closer a channel being used is to an idle channel (i.e. the smaller the frequency difference between the two channels), the more serious the interference on the idle channel.

According to the IEEE 802.11b standard in which 14 channels are provided, assuming that the 14 channels are C₁, C₂, C₃, . . . C₁₂, C₁₃, C₁₄ (where frequency increases in sequence with the channel subscript number), if channel C₅ is being used, the interference on channel C₄ is more serious than the interference on channel C₃. Similarly, the interference on channel C₆ is more serious than the interference on channel C₇. Accordingly, an embodiment of the present invention provides a mathematical algorithm to determine a reference value representing communication quality for each channel allowing one from a plurality of idle channels to be selected.

Please refer to FIG. 1 showing a flowchart of the method according to an embodiment of the present invention as follows:

Step 110: Detect the status of channels in a wireless network system using an AP to divide the channels into “in-use channels” and “idle channels”.

Step 120: Determine a reference value for each idle channel according to the distribution of the in-use channels using mathematical calculation.

Step 130: Compare the reference values of the idle channels to select one channel for the AP to use.

Using the IEEE 802.11b standard as an example, assume that channel C₂ and channel C₁₀ are channels being used by other APs. In Step 110, channels C₂ and C₁₀ are classified as “in-use channels”, and the remaining channels C₁, C₃, C₄, C₅, C₆, C₇, C₈, C₉, C₁₁, C₁₂, C₁₃, C₁₄ are classified as “idle channels.” In Step 120, the reference value (R_(n)) is determined for each idle channel (C_(n)). Weighted calculation is hereby taken as an example, without limitation, as follows: $\begin{matrix} {{R_{1} = {{4x\quad c_{2}} + {3\quad x\quad c_{3}} + {2x\quad c_{4}} + {1x\quad c_{5}} + {0x\quad c_{6}} + {0x\quad c_{7}} + {0x\quad c_{8}} + {0x\quad c_{9}} + {0x\quad c_{10}} +}}\quad} \\ {\quad{{0x\quad c_{11}} + {0x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{3} = {{3x\quad c_{1}} + {4\quad x\quad c_{2}} + {4x\quad c_{4}} + {3x\quad c_{5}} + {2x\quad c_{6}} + {1x\quad c_{7}} + {0x\quad c_{8}} + {0x\quad c_{9}} + {0x\quad c_{10}} +}}\quad} \\ {\quad{{0x\quad c_{11}} + {0x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{4} = {{2x\quad c_{1}} + {3\quad x\quad c_{2}} + {4x\quad c_{3}} + {4x\quad c_{5}} + {3x\quad c_{6}} + {2x\quad c_{7}} + {1x\quad c_{8}} + {0x\quad c_{9}} + {0x\quad c_{10}} +}}\quad} \\ {\quad{{0x\quad c_{11}} + {0x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{5} = {{1x\quad c_{1}} + {2\quad x\quad c_{2}} + {3x\quad c_{3}} + {4x\quad c_{4}} + {4x\quad c_{6}} + {3x\quad c_{7}} + {2x\quad c_{8}} + {1x\quad c_{9}} + {0x\quad c_{10}} +}}\quad} \\ {\quad{{0x\quad c_{11}} + {0x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{6} = {{0x\quad c_{1}} + {1\quad x\quad c_{2}} + {2x\quad c_{3}} + {3x\quad c_{4}} + {4x\quad c_{5}} + {4x\quad c_{7}} + {3x\quad c_{8}} + {2x\quad c_{9}} + {1x\quad c_{10}} +}}\quad} \\ {\quad{{0x\quad c_{11}} + {0x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{7} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {1x\quad c_{3}} + {2x\quad c_{4}} + {3x\quad c_{5}} + {4x\quad c_{6}} + {4x\quad c_{8}} + {3x\quad c_{9}} + {2x\quad c_{10}} +}}\quad} \\ {\quad{{1x\quad c_{11}} + {0x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{8} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {0x\quad c_{3}} + {1x\quad c_{4}} + {2x\quad c_{5}} + {3x\quad c_{6}} + {4x\quad c_{7}} + {4x\quad c_{9}} + {3x\quad c_{10}} +}}\quad} \\ {\quad{{2x\quad c_{11}} + {1x\quad c_{12}} + {0x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{9} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {0x\quad c_{3}} + {0x\quad c_{4}} + {1x\quad c_{5}} + {2x\quad c_{6}} + {3x\quad c_{7}} + {4x\quad c_{8}} + {4x\quad c_{10}} +}}\quad} \\ {\quad{{3x\quad c_{11}} + {2x\quad c_{12}} + {1x\quad c_{13}} + {0x\quad c_{14}}}} \\ {{R_{11} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {0x\quad c_{3}} + {0x\quad c_{4}} + {0x\quad c_{5}} + {0x\quad c_{6}} + {1x\quad c_{7}} + {2x\quad c_{8}} + {3x\quad c_{9}} +}}\quad} \\ {\quad{{4x\quad c_{10}} + {4x\quad c_{12}} + {3x\quad c_{13}} + {2x\quad c_{14}}}} \\ {{R_{12} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {0x\quad c_{3}} + {0x\quad c_{4}} + {0x\quad c_{5}} + {0x\quad c_{6}} + {0x\quad c_{7}} + {1x\quad c_{8}} + {2x\quad c_{9}} +}}\quad} \\ {\quad{{3x\quad c_{10}} + {4x\quad c_{11}} + {4x\quad c_{13}} + {3x\quad c_{14}}}} \\ {{R_{13} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {0x\quad c_{3}} + {0x\quad c_{4}} + {0x\quad c_{5}} + {0x\quad c_{6}} + {0x\quad c_{7}} + {0x\quad c_{8}} + {1x\quad c_{9}} +}}\quad} \\ {\quad{{2x\quad c_{10}} + {3x\quad c_{11}} + {4x\quad c_{12}} + {4x\quad c_{14}}}} \\ {{R_{14} = {{0x\quad c_{1}} + {0\quad x\quad c_{2}} + {0x\quad c_{3}} + {0x\quad c_{4}} + {0x\quad c_{5}} + {0x\quad c_{6}} + {0x\quad c_{7}} + {0x\quad c_{8}} + {0x\quad c_{9}} +}}\quad} \\ {\quad{{1x\quad c_{10}} + {2x\quad c_{11}} + {3x\quad c_{12}} + {4x\quad c_{13}}}} \end{matrix}$ wherein the parameters c₁ through c₁₄ correspond to channel C₁ through C₁₄, respectively. In this embodiment, the parameters indicate the status of their corresponding channels, respectively.

Since channel C₂ and channel C₁₀ are in-use channels and channels C₁, C₃, C₄, C₅, C₆, C₇, C₈, C₉, C₁₁, C₁₂, C₁₃, C₁₄ are idle channels, parameters c₂ and c₁₀ can be determined as 1, and parameters c₁, c₃, c₄, c₅, c₆, c₇, c₈c₉, c₁₁, c₁₂, c₁₃, c₁₄ can be determined as 0. After calculation, the reference values are as follows: R₁=4, R₃=4, R₄=3, R₅=5, R₆=2, R₇=2, R₈=3, R₉=4, R₁₁=4, R₁₂ =3, R₁₃ =2, R₁₄=1. Therefore, channel C₁₄ is the one least interfered with by the in-use channels because it has the smallest reference value. In this way, in Step 130, channel C₁₄ is selected.

Please note that when calculating the reference values, formulae, parameters, and coefficients can be properly designed by system designers. For instance, the farther an idle channel is from an in-use channel, the smaller the interference on the idle channel by the in-use channel. Therefore, accumulating the intervals between an idle channel and all the in-use channels may also be used to determine the reference value of the idle channel. In the following embodiment, if the interval is longer than a certain level, the interval between the idle channel and the in-use channel is then set to be a fixed value. For instance, the interval over 4 is set to be 5 in the following description. By doing so, the degree of interference in the idle channel can also be determined, wherein the larger the reference value is, the better the communication quality the idle channel provides. Here is an example of such calculation: $\begin{matrix} {{R_{1} = {{1x\quad c_{2}} + {2x\quad c_{3}} + {3x\quad c_{4}} + {4x\quad c_{5}} + {5x\quad c_{6}} + {5x\quad c_{7}} + {5x\quad c_{8}} + {5x\quad c_{9}} + {5x\quad c_{10}} +}}\quad} \\ {\quad{{5x\quad c_{11}} + {5x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{3} = {{2x\quad c_{1}} + {1\quad x\quad c_{2}} + {1x\quad c_{4}} + {2x\quad c_{5}} + {3x\quad c_{6}} + {4x\quad c_{7}} + {5x\quad c_{8}} + {5x\quad c_{9}} + {5x\quad c_{10}} +}}\quad} \\ {\quad{{5x\quad c_{11}} + {5x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{4} = {{3x\quad c_{1}} + {2\quad x\quad c_{2}} + {1x\quad c_{3}} + {1x\quad c_{5}} + {2x\quad c_{6}} + {3x\quad c_{7}} + {4x\quad c_{8}} + {5x\quad c_{9}} + {5x\quad c_{10}} +}}\quad} \\ {\quad{{5x\quad c_{11}} + {5x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{5} = {{4x\quad c_{1}} + {3\quad x\quad c_{2}} + {2x\quad c_{3}} + {1x\quad c_{4}} + {1x\quad c_{6}} + {2x\quad c_{7}} + {3x\quad c_{8}} + {4x\quad c_{9}} + {5x\quad c_{10}} +}}\quad} \\ {\quad{{5x\quad c_{11}} + {5x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{6} = {{5x\quad c_{1}} + {4\quad x\quad c_{2}} + {3x\quad c_{3}} + {2x\quad c_{4}} + {1x\quad c_{5}} + {1x\quad c_{7}} + {2x\quad c_{8}} + {3x\quad c_{9}} + {4x\quad c_{10}} +}}\quad} \\ {\quad{{5x\quad c_{11}} + {5x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{7} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {4x\quad c_{3}} + {3x\quad c_{4}} + {2x\quad c_{5}} + {1x\quad c_{6}} + {1x\quad c_{8}} + {2x\quad c_{9}} + {3x\quad c_{10}} +}}\quad} \\ {\quad{{4x\quad c_{11}} + {5x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{8} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {5x\quad c_{3}} + {4x\quad c_{4}} + {3x\quad c_{5}} + {2x\quad c_{6}} + {1x\quad c_{7}} + {1x\quad c_{9}} + {2x\quad c_{10}} +}}\quad} \\ {\quad{{3x\quad c_{11}} + {4x\quad c_{12}} + {5x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{9} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {5x\quad c_{3}} + {5x\quad c_{4}} + {4x\quad c_{5}} + {3x\quad c_{6}} + {2x\quad c_{7}} + {1x\quad c_{8}} + {1x\quad c_{10}} +}}\quad} \\ {\quad{{2x\quad c_{11}} + {3x\quad c_{12}} + {4x\quad c_{13}} + {5x\quad c_{14}}}} \\ {{R_{11} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {5x\quad c_{3}} + {5x\quad c_{4}} + {5x\quad c_{5}} + {5x\quad c_{6}} + {4x\quad c_{7}} + {3x\quad c_{8}} + {2x\quad c_{9}} +}}\quad} \\ {\quad{{1x\quad c_{10}} + {1x\quad c_{12}} + {2x\quad c_{13}} + {3x\quad c_{14}}}} \\ {{R_{12} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {5x\quad c_{3}} + {5x\quad c_{4}} + {5x\quad c_{5}} + {5x\quad c_{6}} + {5x\quad c_{7}} + {4x\quad c_{8}} + {3x\quad c_{9}} +}}\quad} \\ {\quad{{2x\quad c_{10}} + {1x\quad c_{11}} + {1x\quad c_{13}} + {2x\quad c_{14}}}} \\ {{R_{13} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {5x\quad c_{3}} + {5x\quad c_{4}} + {5x\quad c_{5}} + {5x\quad c_{6}} + {5x\quad c_{7}} + {5x\quad c_{8}} + {4x\quad c_{9}} +}}\quad} \\ {\quad{{3x\quad c_{10}} + {2x\quad c_{11}} + {1x\quad c_{12}} + {1x\quad c_{14}}}} \\ {{R_{14} = {{5x\quad c_{1}} + {5\quad x\quad c_{2}} + {5x\quad c_{3}} + {5x\quad c_{4}} + {5x\quad c_{5}} + {5x\quad c_{6}} + {5x\quad c_{7}} + {5x\quad c_{8}} + {5x\quad c_{9}} +}}\quad} \\ {\quad{{4x\quad c_{10}} + {3x\quad c_{11}} + {2x\quad c_{12}} + {1x\quad c_{13}}}} \end{matrix}$ wherein the parameters c₁ through c₁₄ correspond to channel C₁ through C₁₄, respectively. Similar to the previous embodiment, the parameters herein indicate the status of their corresponding channels, respectively.

Similarly, since channel C₂ and channel C₁₀ are in-use channels and channels C₁, C₃, C₄, C₅, C₆, C₇, C₈, C₉, C₁₁, C₁₂, C₁₃, C₁₄ are idle channels, parameters c₂ and c₁₀ can be determined as 1, and parameters c₁, c₃, c₄, c₅, c₆, c₇, c₈, c₉, c₁₁, c₁₂, c₁₃, c₁₄ can be determined as 0. After calculation, the reference values are as follows: R₁=6, R₃=6, R₄=7, R₅=8, R₆=8, R₇=8, R₈=7, R₉=6, R₁₁=6, R₁₂ =7, R ₁₃=8 , R₁₄=9. Therefore, channel C₁₄ is the channel least interfered with by in-use channels because it has the largest reference value, so that in Step 130, channel C₁₄ is selected.

The method according to embodiments of the present invention utilizes a mathematical calculation to determine a reference value for each idle channel according to the distribution of the in-use channels in order to select an optimal idle channel by comparing the reference values.

Those skilled in the art will readily observe that numerous modifications and alterations of the device may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims. 

1. A method for selecting one channel from a plurality of channels in a wireless network system, the channels including at least one in-use channel, a first idle channel, and a second idle channel, the method comprising: determining a first reference value for the first idle channel and a second reference value for the second idle channel by comparing the frequency band of the in-use channel with the frequency band of the first idle channel and the frequency band of the second idle channel; and comparing the first reference value with the second reference value to select one from the first idle channel and the second idle channel.
 2. The method of claim 1, further comprising: detecting the channels to identify the in-use channel, the first idle channel, and the second idle channel.
 3. The method of claim 1, wherein if the frequency band interval between the in-use channel and the first idle channel is shorter than that between the in-use channel and the second idle channel, the first reference value is larger than the second reference value.
 4. The method of claim 3, wherein the channel selected from the first idle channel and the second idle channel is the one having a smaller reference value.
 5. The method of claim 1, wherein if the frequency band interval between the in-use channel and the first idle channel is shorter than the frequency band interval between the in-use channel and the second idle channel, the first reference value is smaller than the second reference value.
 6. The method of claim 5, wherein the channel selected from the first idle channel and the second idle channel is the one having a larger reference value.
 7. A method used in a wireless network system, the method comprising: detecting the status of a plurality of channels in the wireless network system to divide the channels into at least one in-use channel, a first idle channel, and a second idle channel; and comparing the frequency band of the in-use channel with the frequency band of the first idle channel and the second idle channel to determine a first reference value for the first idle channel and a second reference value for the second idle channel.
 8. The method of claim 7, further comprising: comparing the first reference value with the second reference value to select one from the first idle channel and the second idle channel.
 9. The method of claim 8, wherein if the frequency band interval between the in-use channel and the first idle channel is shorter than the frequency band interval between the in-use channel and the second idle channel, the first reference value is larger than the second reference value.
 10. The method of claim 9, wherein the channel selected from the first idle channel and the second idle channel is the one having a smaller reference value.
 11. The method of claim 8, wherein if the frequency band interval between the in-use channel and the first idle channel is shorter than the frequency band interval between the in-use channel and the second idle channel, the first reference value is smaller than the second reference value.
 12. The method of claim 11, wherein the channel selected from the first idle channel and the second idle channel is the one having a larger reference value.
 13. A method for selecting a channel from a plurality of channels in a wireless network system, the channels comprising at least one in-use channel and at least one idle channel, the method comprising: determining a reference value for each idle channel according to the distribution of the at least one in-use channel among the channels; and selecting a channel from the at least one idle channel according to the at least one reference value.
 14. The method of claim 13 further comprising: detecting the status of each channel for identifying the in-use channel and the idle channel.
 15. The method of claim 13 wherein the reference value is determined by utilizing mathematical calculation.
 16. The method of claim 15 wherein the reference value is determined by a weighted accumulation based on the interval between the idle channel corresponding to the reference value and the at least one in-use channel.
 17. The method of claim 16 wherein in the reference value determining step, the farther one of the at least one in-use channel to the idle channel corresponding to the reference value is, the less is accumulated to the reference value.
 18. The method of claim 17 wherein in the selecting step, the idle channel corresponding to a reference value with the least weighted accumulation is selected.
 19. The method of claim 16 wherein in the reference value determining step, the farther one of the at least one in-use channel to the idle channel corresponding to the reference value is, the more is accumulated to the reference value.
 20. The method of claim 19 wherein in the selecting step, the idle channel corresponding to a reference value with the most weighted accumulation is selected. 